package net.risesoft.risebi.collection.model;

import java.io.Serializable;

import org.apache.commons.lang.builder.CompareToBuilder;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ReflectionToStringBuilder;

/*
 * 
 REPORTID  NUMBER(9) not null,
 VALUE     NUMBER(21,5),
 ROWCODE   VARCHAR2(50) default 'a' not null,
 COLCODE   VARCHAR2(50) default '1' not null,
 VALUETYPE CHAR(1) default 'N' not null,
 VALUESTR  VARCHAR2(4000)
 * 
 */
public class ReportDataR6 implements Serializable {
	/**
	 -- ADD/MODIFY COLUMNS 
	ALTER TABLE RPT_RD_2010GY ADD ROWNO NUMBER(9);
	ALTER TABLE RPT_RD_2010GY ADD COLNO NUMBER(9);
	ALTER TABLE RPT_RD_2010GY ADD ROWTITLE VARCHAR2(50);
	ALTER TABLE RPT_RD_2010GY ADD COLTITLE VARCHAR2(50);
	ALTER TABLE RPT_RD_2010GY ADD UNIT VARCHAR2(50);
	ALTER TABLE RPT_RD_2010GY ADD rangeCode VARCHAR2(50) default 0;
	ALTER TABLE RPT_RD_2009GY ADD ROWNO NUMBER(9);
	ALTER TABLE RPT_RD_2009GY ADD COLNO NUMBER(9);
	ALTER TABLE RPT_RD_2009GY ADD ROWTITLE VARCHAR2(50);
	ALTER TABLE RPT_RD_2009GY ADD COLTITLE VARCHAR2(50);
	ALTER TABLE RPT_RD_2009GY ADD UNIT VARCHAR2(50);
	ALTER TABLE RPT_RD_2009GY ADD rangeCode VARCHAR2(50) default 0;
	ALTER TABLE RPT_RD_DEMO ADD ROWNO NUMBER(9);
	ALTER TABLE RPT_RD_DEMO ADD COLNO NUMBER(9);
	ALTER TABLE RPT_RD_DEMO ADD ROWTITLE VARCHAR2(50);
	ALTER TABLE RPT_RD_DEMO ADD COLTITLE VARCHAR2(50);
	ALTER TABLE RPT_RD_DEMO ADD UNIT VARCHAR2(50);
	ALTER TABLE RPT_RD_DEMO ADD rangeCode VARCHAR2(50) default 0;
	ALTER TABLE RPT_RD_2009SZBIH ADD ROWNO NUMBER(9);
	ALTER TABLE RPT_RD_2009SZBIH ADD COLNO NUMBER(9);
	ALTER TABLE RPT_RD_2009SZBIH ADD ROWTITLE VARCHAR2(50);
	ALTER TABLE RPT_RD_2009SZBIH ADD COLTITLE VARCHAR2(50);
	ALTER TABLE RPT_RD_2009SZBIH ADD UNIT VARCHAR2(50);
	ALTER TABLE RPT_RD_2009SZBIH ADD rangeCode VARCHAR2(50) default 0;
	 */
	private static final long serialVersionUID = -6726728553886378652L;
	private String reportID;
	private String valueType;
	private String valueStr;
	private String rangeCode = "0";
	private String rowCode;
	//private String unit;
	//private String rowTitle;
	//private String colTitle;
	private String colCode;
	private String rowNo;
	private String colNo;
//	private double value;

//	public String getUnit() {
//		return unit;
//	}
//
//	public void setUnit(String unit) {
//		this.unit = unit;
//	}
//
//	public String getColTitle() {
//		return colTitle;
//	}
//
//	public void setColTitle(String colTitle) {
//		this.colTitle = colTitle;
//	}
//
//	public String getRowTitle() {
//		return rowTitle;
//	}
//
//	public void setRowTitle(String rowTitle) {
//		this.rowTitle = rowTitle;
//	}

	public String getRangeCode() {
		return rangeCode;
	}

	public void setRangeCode(String rangeCode) {
		this.rangeCode = rangeCode;
	}

	public int compareTo(Object o) {
		return CompareToBuilder.reflectionCompare(this, o);
	}

	public boolean equals(Object o) {
		return EqualsBuilder.reflectionEquals(this, o);
	}

	public String getColCode() {
		return colCode;
	}

	public String getColNo() {
		return colNo;
	}

	public String getReportID() {
		return reportID;
	}

	public String getRowCode() {
		return rowCode;
	}

	public String getRowNo() {
		// 二维加一表
//		if (rowNo == 0) {
//			return Integer.parseInt(this.rowCode);
//		} else {
//			return rowNo;
//		}
		return rowNo;
	}

//	public double getValue() {
//		return value;
//	}

	public String getValueStr() {
		return valueStr;
	}

	public String getValueType() {
		return valueType;
	}

	public int hashCode() {
		return HashCodeBuilder.reflectionHashCode(this);
	}

	public void setColCode(String colCode) {
		this.colCode = colCode;
	}

	public void setColNo(String colNo) {
		this.colNo = colNo;
	}

	public void setReportID(String reportID) {
		this.reportID = reportID;
	}

	public void setRowCode(String rowCode) {
		this.rowCode = rowCode;
	}

	public void setRowNo(String rowNo) {
		this.rowNo = rowNo;
	}

//	public void setValue(double value) {
//		this.value = value;
//	}

	public void setValueStr(String valueStr) {
		this.valueStr = valueStr;
	}

	public void setValueType(String valueType) {
		this.valueType = valueType;
	}

	public String toString() {
		return ReflectionToStringBuilder.toString(this);
	}
}
